package com.nageoffer.jobtrain.projects.dao.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.nageoffer.jobtrain.projects.common.database.BaseDO;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * OJ题目实体类
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName("t_oj_question")
public class OjQuestionDO extends BaseDO {
    /**
     * oj题主键id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 题目标题
     */
    private String title;

    /**
     * 题目难度；0：简单，1：中等，2：困难
     */
    private Integer difficulty;

    /**
     * 时间限制
     */
    private Integer timeLimit;

    /**
     * 空间限制
     */
    private Integer spaceLimit;

    /**
     * 题目描述内容
     */
    private String content;

    /**
     * 题目测试用例（json格式）
     */
    private String questionCase;

    /**
     * 默认代码块
     */
    private String defaultCode;

    /**
     * main函数
     */
    private String mainFunction;

    /**
     * 创建题目管理员用户
     */
    private Long createOperator;

    /**
     * 更新题目管理员用户
     */
    private Long updateOperator;
}